package com.indexingsystem.system.service;

import java.util.List;

import com.indexingsystem.boss.Vo.WebChatSharesVo;
import com.indexingsystem.boss.common.PagedResult;
import com.indexingsystem.boss.entity.WechatShares;

public interface IWechatSharesService {
	/**
	 * 根据分享ID删除微信分享表数据
	 * @param wechatSharedId
	 * @return
	 */
    int deleteByPrimaryKey(String resId);

    /**
     * 新增微信分享表数据
     * @param record
     * @return
     */
    int insert(WechatShares record);

    /**
     * 条件新增微信分享表数据
     * @param record
     * @return
     */
    int insertSelective(WechatShares record);

    /**
     * 根据分享id查询微信分享表数据
     * @param wechatSharedId
     * @return
     */
    WechatShares selectByPrimaryKey(String resId);
    
    /**
     * 根据分享id资源id查询表数据
     * @param 
     * @return
     */
    PagedResult<WebChatSharesVo> getWechatShardList(WebChatSharesVo webChatSharesVo);
    

    /**
     * 根据分享id资源id查询表数量
     * @param wechatShardVo
     * @return
     */
    Integer getWechatShardListCount(WebChatSharesVo webChatSharesVo);

    /**
     * 批量修改微信分享表数据
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(WechatShares record);

    /**
     * 修改微信分享表数据
     * @param record
     * @return
     */
    int updateByPrimaryKey(WechatShares record);
 
    
    WechatShares getWechatShardListCountByRefId(WebChatSharesVo webChatSharesVo);
	WechatShares getWechatShardModelByRefId(WebChatSharesVo webChatSharesVo);

	int deleteWechatSharesByIdBatch(List<String> resIdList) throws Exception;
	
    PagedResult<WechatShares> getWechatShardModelByRefIdList(WebChatSharesVo webChatSharesVo);
    
    Integer getWechatShardModelByRefIdListChildCount(WebChatSharesVo webChatSharesVo);
    
    PagedResult<WechatShares> getWechatShardModelByRefIdListByChild(WebChatSharesVo webChatSharesVo);
    
    Integer getWechatShardModelByRefIdListByChildCount(WebChatSharesVo webChatSharesVo);
    
    PagedResult<WechatShares> getWechatShardModelByRefIdListByParent(WebChatSharesVo webChatSharesVo);
    
    Integer getWechatShardModelByRefIdCountListByParent(WebChatSharesVo webChatSharesVo);
    Integer getWechatShardModelByRefIdCountListByChild(WebChatSharesVo webChatSharesVo);
    
    
    
    Integer getWechatShardModelByRefIdCountList(WebChatSharesVo webChatSharesVo);
    
    
    PagedResult<WechatShares> getWechatShardModelByRefIdListByChildGroupPeriodName(WebChatSharesVo webChatSharesVo);
    Integer getWechatShardModelByRefIdListByChildGroupPeriodNameCount(WebChatSharesVo webChatSharesVo);
	
    
    
    PagedResult<WechatShares> getPavilionRelationsForWebChatList(WebChatSharesVo webChatSharesVo);
    Integer getPavilionRelationsForWebChatCount(WebChatSharesVo webChatSharesVo);
}